package com.lonwin.mes2u8.domain.u8;

import com.lonwin.mes2u8.domain.mes.MesProductionQueryResult;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author DELL
 * @Date 2024-01-02 18:09
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class U8ProductionAddParamInfoEntry {
    // 存货编码
    private String inventorycode;
            // 数量
    private BigDecimal quantity;
            // 辅记量单位编码
    private String assitantunit;
            // 换算率
    private BigDecimal irate;
            // 件数
    private BigDecimal number;
            // 单价
    private BigDecimal price;
            // 金额
    private BigDecimal cost;
            // 批号
    private String serial;
            // 生产日期
    private Date makedate;
            // 失效日期
    private Date validdate;
            // 自由项1
    private String free1;
            // 自由项2
    private String free2;
            // 自由项3
    private String free3;
            // 自由项4
    private String free4;
            // 自由项5
    private String free5;
            // 自由项6
    private String free6;
            // 自由项7
    private String free7;
            // 自由项8
    private String free8;
            // 自由项9
    private String free9;
            // 自由项10
    private String free10;
            // 单据体自定义项1
    private String define22;
            // 单据体自定义项2
    private String define23;
            // 单据体自定义项3
    private String define24;
            // 单据体自定义项4
    private String define25;
            // 单据体自定义项5
    private BigDecimal define26;
            // 单据体自定义项6
    private BigDecimal define27;
            // 单据体自定义项7
    private String define28;
            // 单据体自定义项8
    private String define29;
            // 单据体自定义项9
    private String define30;
            // 单据体自定义项10
    private String define31;
            // 单据体自定义项11
    private String define32;
            // 单据体自定义项12
    private String define33;
            // 单据体自定义项13
    private BigDecimal define34;
            // 单据体自定义项14
    private BigDecimal define35;
            // 单据体自定义项15
    private Date define36;
            // 单据体自定义项16
    private Date define37;
            // 行号
    private Integer rowno;

    public static U8ProductionAddParamInfoEntry buildSelfByMesProduction(MesProductionQueryResult mesProductionQueryResult) {
        return U8ProductionAddParamInfoEntry.builder()
                .inventorycode(mesProductionQueryResult.getSpono())
                .quantity(mesProductionQueryResult.getSingleWeight())
                .build();
    }
}
